CSS è«çããããã£ã¬ãã« 2 ã§ãŠã§ãã¬ã€ã¢ãŠãã®æªæ¥ãæ¢æ±ããŸããããæ°ããããããã£ãå®è·µçãªäŸããããŠçã«ã°ããŒãã«ã§èšè¿°ã¢ãŒããæèãããŠã§ããµã€ããæ§ç¯ããæ¹æ³ã解説ããŸãã
CSS è«çããããã£ã¬ãã« 2ïŒåŒ·åãããèšè¿°ã¢ãŒãã®ãµããŒãã«ããçã«ã°ããŒãã«ãªãŠã§ãã®æ§ç¯
ãŠã§ãéçºè ã¯æ°å幎ã«ããããäžãäžãå·ŠããããŠå³ãšãã£ãç©çäžçã«æ ¹ãããèªåœã䜿ã£ãŠã¬ã€ã¢ãŠããæ§ç¯ããŠããŸãããmargin-leftãpadding-topãborder-rightãèšå®ããŸãããŠã§ããäž»ã«å·Šããå³ãäžããäžã®åªäœã§ãã£ãæä»£ã«ã¯ããã®ã¡ã³ã¿ã«ã¢ãã«ã¯éåžžã«åœ¹ç«ã¡ãŸããããããããŠã§ãã¯ã°ããŒãã«ã§ãããã¹ãŠã®èšèªãšæåã®ããã®ãã©ãããã©ãŒã ã§ããããã®å€ãã¯ãã®åçŽãªæ¹åã®æµãã«åŸããŸããã
ã¢ã©ãã¢èªãããã©ã€èªã®ãããªèšèªã¯ãå³ããå·Šã«æžãããŸããäŒçµ±çãªæ¥æ¬èªãšäžåœèªã¯ãäžããäžãå³ããå·Šã«åçŽã«æžãããšãã§ããŸããç©ççãªãå·Šããå³ãžã® CSS ã¢ãã«ããããã®èšè¿°ã·ã¹ãã ã«åŒ·å¶ãããšãã¬ã€ã¢ãŠãã®åŽ©ãããã©ã¹ãã¬ãŒã·ã§ã³ã®ããŸããŠãŒã¶ãŒãšã¯ã¹ããªãšã³ã¹ããããŠå€§éã®ã³ãŒããªãŒããŒã©ã€ããçºçããŸããããã§ CSS è«çããããã£ãšå€ãç»å Žããç©ççãªæ¹åãããããŒã«çžå¯Ÿçãªè«ççãªæ¹åãžã®æ ¹æ¬çãªãã©ãã€ã ã·ããã衚ããŸããã¬ãã« 1 ãåºç€ãç¯ããäžæ¹ã§ãCSS è«çããããã£ã¬ãã« 2 ã¯å šäœåã宿ãããçã«ãŠãããŒãµã«ãªãèšè¿°ã¢ãŒããæèãããŠãŒã¶ãŒã€ã³ã¿ãŒãã§ãŒã¹ãæ§ç¯ããããã«å¿ èŠãªããŒã«ãæäŸããŸãã
ãã®å æ¬çãªã¬ã€ãã§ã¯ãã¬ãã« 2 ã«ãã£ãŠããããããæ©èœåŒ·åã«ã€ããŠæ·±ãæãäžããŠãããŸãããŸããã³ã¢ã³ã³ã»ããã®å確èªããå§ããæ¬¡ã«ã®ã£ãããåããæ°ããããããã£ãšå€ã調æ»ããæåŸã«ãããããèšè¿°ã¢ãŒãã«ã·ãŒã ã¬ã¹ã«é©å¿ããã³ã³ããŒãã³ããæ§ç¯ããããšã§ããã¹ãŠãå®è·µã«ç§»ããŸããCSS ã¬ã€ã¢ãŠãã«å¯Ÿããèãæ¹ãæ°žé ã«å€ããæºåãããŠãã ããã
ã¯ã€ãã¯ãªãã¬ãã·ã¥ïŒè«çããããã£ã®ã³ã¢ã³ã³ã»ããïŒã¬ãã« 1ïŒ
ã¬ãã« 2 ã®è¿œå æ©èœãçè§£ããããã«ã¯ãã¬ãã« 1 ã«ãã£ãŠç¯ãããåºç€ããã£ãããšçè§£ããŠããå¿ èŠããããŸããã·ã¹ãã å šäœã¯ãèšè¿°ã¢ãŒããšããã®çµæçãããããã¯è»žãšã€ã³ã©ã€ã³è»žãšãã 2 ã€ã®äž»èŠãªæŠå¿µã«åºã¥ããŠæ§ç¯ãããŠããŸãã
4 ã€ã®èšè¿°ã¢ãŒã
writing-mode CSS ããããã£ã¯ãããã¹ããã¬ã€ã¢ãŠããããæ¹åãæ±ºå®ããŸããããã©ã«ããåœç¶ã®ããšãšæããã¡ã§ãããããŒãžäžã®ã³ã³ãã³ãã®ãããŒãæ ¹æ¬çã«å€æŽããããã€ãã®å€ããããŸãã
- horizontal-tb: ããã¯ãã»ãšãã©ã®è¥¿æŽèšèªã®ããã©ã«ãã§ããããã¹ãã¯ãå·Šããå³ïŒãŸãã¯æ¹åã«å¿ããŠå³ããå·ŠïŒã«æ°Žå¹³æ¹åïŒã€ã³ã©ã€ã³è»žïŒã«æµããè¡ã¯äžããäžïŒãããã¯è»žïŒã«ç©ã¿éããããŸãã
- vertical-rl: äŒçµ±çãªæ±ã¢ãžã¢ã®ã¿ã€ãã°ã©ãã£ãŒïŒäŸïŒæ¥æ¬èªãäžåœèªïŒã«äœ¿çšãããŸããããã¹ãã¯ãäžããäžïŒã€ã³ã©ã€ã³è»žïŒã«åçŽæ¹åã«æµããè¡ã¯å³ããå·ŠïŒãããã¯è»žïŒã«ç©ã¿éããããŸãã
- vertical-lr: äžèšãšåæ§ã§ãããè¡ã¯å·Šããå³ïŒãããã¯è»žïŒã«ç©ã¿éããããŸããããŸãäžè¬çã§ã¯ãããŸããããã¢ã³ãŽã«æåã®ãããªäžéšã®ã³ã³ããã¹ãã§äœ¿çšãããŸãã
- sidelong-rl / sidelong-lr: ãããã¯ãã°ãªããæšªåãã«ã¬ã€ã¢ãŠããããç¹å®ã®ãŠãŒã¹ã±ãŒã¹çšã§ããäžè¬çãªãŠã§ãã³ã³ãã³ãã§ã¯ããŸãäžè¬çã§ã¯ãããŸããã
éèŠãªæŠå¿µïŒãããã¯å¯Ÿã€ã³ã©ã€ã³è»ž
ããã¯ææ¡ãã¹ãæãéèŠãªæŠå¿µã§ããè«ççãªäžçã§ã¯ããåçŽããšãæ°Žå¹³ãã«ã€ããŠèããã®ãããããããã¯è»žãšã€ã³ã©ã€ã³è»žãšãã芳ç¹ããèãå§ããŸãããããã®è»žã®æ¹åã¯ãwriting-mode ã«å®å šã«äŸåããŸãã
- ã€ã³ã©ã€ã³è»žã¯ã1 è¡å ã§ããã¹ããæµããæ¹åã§ãã
- ãããã¯è»žã¯ãæ°ããè¡ãç©ã¿éããããæ¹åã§ãã
ãããã©ã®ããã«æ©èœããããèŠãŠã¿ãŸãããã
- æšæºçãªè±èªïŒwriting-mode: horizontal-tbïŒã§ã¯ãã€ã³ã©ã€ã³è»žã¯æ°Žå¹³æ¹åã«èµ°ãããããã¯è»žã¯åçŽæ¹åã«èµ°ããŸãã
- äŒçµ±çãªæ¥æ¬èªïŒwriting-mode: vertical-rlïŒã§ã¯ãã€ã³ã©ã€ã³è»žã¯åçŽæ¹åã«èµ°ãããããã¯è»žã¯æ°Žå¹³æ¹åã«èµ°ããŸãã
ãããã®è»žã¯åãæ¿ããå¯èœæ§ããããããwidth ã height ã®ãããªããããã£ã¯ææ§ã«ãªããŸããwidth ã¯æ°Žå¹³è»žã«æ²¿ã£ããµã€ãºã§ããããããšãã€ã³ã©ã€ã³è»žã«æ²¿ã£ããµã€ãºã§ããïŒè«çããããã£ã¯ããã®ææ§ããè§£æ¶ããŸããå軞㫠start ãš end ããããŸãã
- block-start: è±èªã§ã¯ãäžãã§ãããåçŽæ¹åã®æ¥æ¬èªã§ã¯ãå³ãã§ãã
- block-end: è±èªã§ã¯ãäžãã§ãããåçŽæ¹åã®æ¥æ¬èªã§ã¯ãå·Šãã§ãã
- inline-start: è±èªã§ã¯ãå·Šãã§ãããåçŽæ¹åã®æ¥æ¬èªã§ã¯ãäžãã§ãã
- inline-end: è±èªã§ã¯ãå³ãã§ãããåçŽæ¹åã®æ¥æ¬èªã§ã¯ãäžãã§ãã
ç©çããããã£ããè«çããããã£ãžã®ãããã³ã°ïŒã¬ãã« 1ïŒ
ã¬ãã« 1 ã§ã¯ãç©çããããã£ããè«çããããã£ãžã®å æ¬çãªãããã³ã°ã»ãããå°å ¥ãããŸãããäž»ãªäŸãããã€ã瀺ããŸãã
- width â inline-size
- height â block-size
- min-width â min-inline-size
- max-height â max-block-size
- margin-left â margin-inline-start
- margin-right â margin-inline-end
- margin-top â margin-block-start
- margin-bottom â margin-block-end
- padding-left â padding-inline-start
- padding-top â padding-block-start
- border-right â border-inline-end
- border-bottom â border-block-end
- left / right (ããžã·ã§ãã³ã°çš) â inset-inline-start / inset-inline-end
- top / bottom (ããžã·ã§ãã³ã°çš) â inset-block-start / inset-block-end
ã¬ãã« 1 ã§ã¯ãmargin-inline (start ãš end çš) ã padding-block (start ãš end çš) ã®ãããªäŸ¿å©ãªçç¥åœ¢ãæäŸãããŸããã
ã¬ãã« 2 ãžããããïŒäœãæ°ããããªããããéèŠãªã®ã
ã¬ãã« 1 ã¯èšå¿µç¢çãªåé²ã§ããããããã€ãã®ç®ç«ã£ãã®ã£ãããæ®ããŸãããfloatãclearãresize ã®ãããªç¹å®ã®åºæ¬ç㪠CSS ããããã£ã«ã¯ãè«ççãªåçã®ãã®ããããŸããã§ãããããã«ãborder-radius ã®ãããªããããã£ã¯è«ççã«å¶åŸ¡ã§ããªãã£ããããéçºè ã¯çްããã¹ã¿ã€ãªã³ã°ã®ããã«ç©çããããã£ã«é ŒããããåŸãŸããã§ãããããã¯ãã¬ã€ã¢ãŠãã® 90% ãè«çããããã£ã§æ§ç¯ã§ãããšããŠããç°ãªãèšè¿°ã¢ãŒãã«å¯Ÿå¿ããããã«ç©ççãªãªãŒããŒã©ã€ããå¿ èŠã«ãªãããšãæå³ããç®çãéšåçã«æãªãããšã«ãªããŸãã
CSS è«çããããã£ã¬ãã« 2 ã¯ããããã®æ¬ ç¹ãçŽæ¥çã«è§£æ±ºããŸããããã¯ãæ ¹æ¬çã«æ°ããã·ã¹ãã ãå°å ¥ããã®ã§ã¯ãªããã¬ãã« 1 ã§å§ãŸã£ãã·ã¹ãã ã宿ãããããšã§ããããã¯ãäž»ã«æ¬¡ã® 2 ã€ã®æ¹æ³ã§å®çŸãããŸãã
- æ¬è³ªçã«ç©ççã§ãã£ãå€ã CSS æ©èœïŒfloat ãªã©ïŒã®ããã«ãæ°ããè«çããããã£ãšå€ãå°å ¥ããã
- 以åã¯ç¡èŠãããŠããè€éãªçç¥åœ¢ïŒborder-radius ãªã©ïŒã«å¯Ÿããè«çããããã£ã®ãããã³ã°ã远å ããã
ã¬ãã« 2 ã«ãããå®å šã«ãããŒã«çžå¯Ÿçãªã¹ã¿ã€ãªã³ã°ã·ã¹ãã ã®ããžã§ã³ã¯ã»ãŒå®æããããã¯ããªãŒããŒã©ã€ããªãã«ã誰ã«ãšã£ãŠããã©ãã§ãåäœãããè€éã§çŸãããå ç¢ãªã³ã³ããŒãã³ããæ§ç¯ããããšãã§ããŸãã
æ·±æãïŒã¬ãã« 2 ã®æ°ããè«çå€ãšããããã£
ã¬ãã« 2 ãéçºè ããŒã«ãããã«ããããæã圱é¿åã®ããè¿œå æ©èœãæ¢æ±ããŸãããããããã¯ãã®ã£ãããåããçã«ãŠãããŒãµã«ãªã³ã³ããŒãã³ãèšèšãå®çŸããããŒã«ã§ãã
Float ãš ClearïŒè«çé©åœ
float ããããã£ã¯ãé·å¹Žã«ããã£ãŠ CSS ã¬ã€ã¢ãŠãã®èŠãšãªã£ãŠããŸãããããã®å€ã§ãã left ãš right ã¯ãç©ççãªæ¹åã®å®çŸ©ã§ããè±èªã§æ®µèœã®å·Šã«ç»åã float ãããšãæ£ãã衚瀺ãããŸããããããããã¥ã¡ã³ãã®æ¹åãã¢ã©ãã¢èªã®å³ããå·ŠïŒRTLïŒã«åãæ¿ãããšãç»åã¯ããã¹ããããã¯ã®ãééã£ããåŽã«è¡šç€ºãããŸããããã¯å³åŽã«ããã¹ãã§ãããã¯è¡ã®å é ã§ãã
ã¬ãã« 2 ã§ã¯ãfloat ããããã£ã« 2 ã€ã®æ°ããè«çããŒã¯ãŒããå°å ¥ãããŠããŸãã
- float: inline-start; ããã¯ãèŠçŽ ãã€ã³ã©ã€ã³æ¹åã®å é ã« float ããŸããLTR èšèªã§ã¯ãããã¯å·Šã§ããRTL èšèªã§ã¯ãããã¯å³ã§ããvertical-rl èšè¿°ã¢ãŒãã§ã¯ãããã¯äžã§ãã
- float: inline-end; ããã¯ãèŠçŽ ãã€ã³ã©ã€ã³æ¹åã®æ«å°Ÿã« float ããŸããLTR ã§ã¯ãããã¯å³ã§ããRTL ã§ã¯ãããã¯å·Šã§ããvertical-rl ã§ã¯ãããã¯äžã§ãã
åæ§ã«ãfloat ãããèŠçŽ ã®åšãã®ã³ã³ãã³ãã®æãè¿ããå¶åŸ¡ããããã«äœ¿çšããã clear ããããã£ã¯ããã®è«ççãªå¯Ÿå¿ç©ãååŸããŸãã
- clear: inline-start; ã€ã³ã©ã€ã³å é åŽã® float ãã¯ãªã¢ããŸãã
- clear: inline-end; ã€ã³ã©ã€ã³æ«å°ŸåŽã® float ãã¯ãªã¢ããŸãã
ããã¯ãã²ãŒã ãã§ã³ãžã£ãŒã§ãã远å ã® CSS ã 1 è¡ãèšè¿°ããããšãªããããããèšèªã®æ¹åã«èªåçã«é©å¿ããå€å žçãªç»åãšããã¹ãã®ã©ããã¬ã€ã¢ãŠããäœæã§ããããã«ãªããŸããã
è«çç㪠Resize ã«ããæ©èœåŒ·åãããå¶åŸ¡
resize ããããã£ã¯ãäžè¬çã« textarea ã§äœ¿çšããããŠãŒã¶ãŒãèŠçŽ ã®ãµã€ãºã倿Žã§ããããã«ããŸãããã®åŸæ¥ã®å€ã¯ãhorizontalãverticalãããã³ both ã§ããããããåçŽæ¹åã®èšè¿°ã¢ãŒãã§ã¯ãhorizontalããšã¯ã©ãããæå³ã§ããïŒããã¯äŸç¶ãšããŠç©ççãªæ°Žå¹³è»žã«æ²¿ã£ããµã€ãºå€æŽãæå³ããŸãããããã¯ãŠãŒã¶ãŒãŸãã¯ãã¶ã€ããŒãæå³ããŠããããšã§ã¯ãªããããããŸããããŠãŒã¶ãŒã¯ãè¡ãé·ããããçããããããããã«ãã€ã³ã©ã€ã³è»žã«æ²¿ã£ãŠèŠçŽ ã®ãµã€ãºã倿ŽããããšèããŠããå¯èœæ§ããããŸãã
ã¬ãã« 2 ã§ã¯ãresize ã«è«çå€ãå°å ¥ãããŠããŸãã
- resize: inline; ã€ã³ã©ã€ã³è»žã«æ²¿ã£ããµã€ãºå€æŽãèš±å¯ããŸãã
- resize: block; ãããã¯è»žã«æ²¿ã£ããµã€ãºå€æŽãèš±å¯ããŸãã
è±èªã® textarea ã§ resize: block; ã䜿çšãããšããŠãŒã¶ãŒã¯ãããé«ãããããšãã§ããŸããåçŽæ¹åã®èšè¿°ã¢ãŒãã§äœ¿çšãããšããŠãŒã¶ãŒã¯ãããåºãããããšãã§ããŸãïŒããã¯ãããã¯æ¹åã§ãïŒãããã¯ãã æ©èœããŸãã
`caption-side`ïŒããŒãã«ãã£ãã·ã§ã³ã®è«ççãªããžã·ã§ãã³ã°
caption-side ããããã£ã¯ãããŒãã«ã® caption ã®é çœ®ãæ±ºå®ããŸããå€ãå€ã¯ top ãš bottom ã§ãããç¹°ãè¿ããŸããããããã¯ç©ççã§ãããã¶ã€ããŒã®æå³ããã£ãã·ã§ã³ãããŒãã«ã®ã³ã³ãã³ãã®ãåãã«é 眮ããããšã§ããå Žåãtop ã¯æ°Žå¹³æ¹åã®èšè¿°ã¢ãŒãã§æ©èœããŸããããããvertical-rl ã¢ãŒãã§ã¯ããããã¯ãããŒã®ãéå§ãã¯äžã§ã¯ãªãå³ã«ãããŸãã
ã¬ãã« 2 ã¯ãè«ççãªè§£æ±ºçãæäŸããŸãã
- caption-side: block-start; ãã£ãã·ã§ã³ããããã¯ãããŒã®å é ã«é 眮ããŸãã
- caption-side: block-end; ãã£ãã·ã§ã³ããããã¯ãããŒã®æ«å°Ÿã«é 眮ããŸãã
`text-align`ïŒåºæ¬çãªè«çå€
text-align ã®å€ start ãš end ã¯ãã°ããåããååšããŠããŸããããããã¯è«çããããã£ã®å²åŠã®éèŠãªéšåã§ãããå確èªãã䟡å€ããããŸããtext-align: left; ã䜿çšããããšã¯ãRTL èšèªã§ã¬ã€ã¢ãŠãã®åé¡ãããã«åŒãèµ·ããäžè¬çãªééãã§ããæ£ããææ°ã®ã¢ãããŒãã¯ãåžžã«æ¬¡ã䜿çšããããšã§ãã
- text-align: start; ããã¹ããã€ã³ã©ã€ã³æ¹åã®å é ã«æããŸãã
- text-align: end; ããã¹ããã€ã³ã©ã€ã³æ¹åã®æ«å°Ÿã«æããŸãã
ã¬ãã« 2 ã®è³å®ïŒè«çç㪠`border-radius`
ããããã¬ãã« 2 ã§æãéèŠã§åŒ·åãªè¿œå æ©èœã¯ãå¢çç·ã®ååŸãè«ççã«å¶åŸ¡ããããã®ããããã£ã®ã»ããã§ãã以åã¯ãã«ãŒãã®è§ããäžãã ãã«äžžããããå Žåã¯ãborder-top-left-radius ãš border-top-right-radius ã䜿çšããŠããŸãããããã¯ãåçŽæ¹åã®èšè¿°ã¢ãŒãã§ã¯å®å šã«å£ããŸããåçŽæ¹åã®èšè¿°ã¢ãŒãã§ã¯ããäžãã®è§ã start-start ãš end-start ã®è§ã«ãªãããã§ãã
ã¬ãã« 2 ã§ã¯ããããŒã«çžå¯Ÿçãªæ¹æ³ã§èŠçŽ ã® 4 ã€ã®è§ã«ãããã³ã°ããã 4 ã€ã®æ°ããé·åœ¢ããããã£ãå°å ¥ãããŠããŸããåœåèŠå㯠border-[block-edge]-[inline-edge]-radius ã§ãã
- border-start-start-radius: ãããã¯éå§åŽãšã€ã³ã©ã€ã³éå§åŽãåºäŒãè§ã
- border-start-end-radius: ãããã¯éå§åŽãšã€ã³ã©ã€ã³çµäºåŽãåºäŒãè§ã
- border-end-start-radius: ãããã¯çµäºåŽãšã€ã³ã©ã€ã³éå§åŽãåºäŒãè§ã
- border-end-end-radius: ãããã¯çµäºåŽãšã€ã³ã©ã€ã³çµäºåŽãåºäŒãè§ã
ããã¯æåã¯èŠèŠåããã®ãé£ããå¯èœæ§ããããããããŸããŸãªèšè¿°ã¢ãŒãã§ãããã³ã°ããŠã¿ãŸãããã
`writing-mode: horizontal-tb` (äŸïŒè±èª) ã§ã® `border-radius` ã®ãããã³ã°
- border-start-start-radius 㯠top-left-radius ã«ãããã³ã°ãããŸãã
- border-start-end-radius 㯠top-right-radius ã«ãããã³ã°ãããŸãã
- border-end-start-radius 㯠bottom-left-radius ã«ãããã³ã°ãããŸãã
- border-end-end-radius 㯠bottom-right-radius ã«ãããã³ã°ãããŸãã
`dir="rtl"` (äŸïŒã¢ã©ãã¢èª) ã䜿çšãã `writing-mode: horizontal-tb` ã§ã® `border-radius` ã®ãããã³ã°
ããã§ã¯ãã€ã³ã©ã€ã³æ¹åãå転ããŸãã
- border-start-start-radius 㯠top-right-radius ã«ãããã³ã°ãããŸããïŒãããã¯éå§ã¯äžãã€ã³ã©ã€ã³éå§ã¯å³ïŒã
- border-start-end-radius 㯠top-left-radius ã«ãããã³ã°ãããŸãã
- border-end-start-radius 㯠bottom-right-radius ã«ãããã³ã°ãããŸãã
- border-end-end-radius 㯠bottom-left-radius ã«ãããã³ã°ãããŸãã
`writing-mode: vertical-rl` (äŸïŒæ¥æ¬èª) ã§ã® `border-radius` ã®ãããã³ã°
ããã§ã¯ãäž¡æ¹ã®è»žãå転ããŸãã
- border-start-start-radius 㯠top-right-radius ã«ãããã³ã°ãããŸããïŒãããã¯éå§ã¯å³ãã€ã³ã©ã€ã³éå§ã¯äžïŒã
- border-start-end-radius 㯠bottom-right-radius ã«ãããã³ã°ãããŸãã
- border-end-start-radius 㯠top-left-radius ã«ãããã³ã°ãããŸãã
- border-end-end-radius 㯠bottom-left-radius ã«ãããã³ã°ãããŸãã
ãããã®æ°ããããããã£ã䜿çšããããšã§ãã³ã³ãã³ãã®ãããŒã«æå³çã«é¢é£ä»ããããç©ççãªç»é¢ã«ã¯é¢é£ä»ããããªãè§ã®ååŸãå®çŸ©ã§ããŸãããstart-startãã®è§ã¯ãèšèªãããã¹ãã®æ¹åã«é¢ä¿ãªããåžžã«æ£ããè§ã«ãªããŸãã
å®è·µçãªå®è£ ïŒã°ããŒãã«å¯Ÿå¿ã³ã³ããŒãã³ãã®æ§ç¯
çè«ã¯çŽ æŽãããã§ããããããå®éã«ã©ã®ããã«æ©èœããããèŠãŠã¿ãŸããããå€ãç©çããããã£ã䜿çšããŠåçŽãªãããã¡ã€ã«ã«ãŒãã³ã³ããŒãã³ããæ§ç¯ããããããªãã¡ã¯ã¿ãªã³ã°ããŠãã¬ãã« 1 ãšã¬ãã« 2 ã®äž¡æ¹ã®ææ°ã®è«çããããã£ã䜿çšããŸãã
ã«ãŒãã«ã¯ãçåŽã« float ãããç»åãã¿ã€ãã«ãããã€ãã®ããã¹ããè£ é£Ÿçãªå¢çç·ãšäžžãè§ããããŸãã
ãå€ããæ¹æ³ïŒããããç©çããããã£ã«ãŒã
ãããæ°å¹Žåã«ãã®ã«ãŒããã¹ã¿ã€ãªã³ã°ããæ¹æ³ã§ãã
/* --- CSS (ç©çããããã£) --- */
.physical-card {
width: 300px;
padding: 20px;
margin-bottom: 20px;
border: 1px solid #ccc;
border-left: 5px solid steelblue;
border-top-left-radius: 8px;
border-bottom-left-radius: 8px;
}
.physical-card .avatar {
float: left;
width: 80px;
height: 80px;
margin-right: 15px;
}
.physical-card h3 {
margin-top: 0;
text-align: left;
}
æšæºçãªè±èªã® LTR ã³ã³ããã¹ãã§ã¯ãããã¯åé¡ãªã衚瀺ãããŸããããããããã dir="rtl" ãŸã㯠writing-mode: vertical-rl ãæã€ã³ã³ããå ã«é 眮ãããšãã¬ã€ã¢ãŠããå£ããŸããè£ é£Ÿçãªå¢çç·ãééã£ãåŽã«ãããã¢ãã¿ãŒãééã£ãåŽã«ãããããŒãžã³ãæ£ãããªããäžžãè§ãééã£ãå Žæã«ãããŸãã
ãæ°ãããæ¹æ³ïŒå ç¢ãªãè«çããããã£ã«ãŒã
次ã«ãè«çããããã£ã䜿çšããŠåãã³ã³ããŒãã³ãããªãã¡ã¯ã¿ãªã³ã°ããŸããããã¬ãã« 1 ã®ããããã£ãšã¬ãã« 2 ããã®æ°ããè¿œå æ©èœã掻çšããŸãã
/* --- CSS (è«çããããã£) --- */
.logical-card {
inline-size: 300px;
padding: 20px; /* `padding` çç¥åœ¢ã¯ãã§ã«è«ççã§ãïŒ */
margin-block-end: 20px;
border: 1px solid #ccc;
border-inline-start: 5px solid darkcyan;
border-start-start-radius: 8px; /* ã¬ãã« 2 ãã¯ãŒïŒ */
border-end-start-radius: 8px; /* ã¬ãã« 2 ãã¯ãŒïŒ */
}
.logical-card .avatar {
float: inline-start; /* ã¬ãã« 2 ãã¯ãŒïŒ */
inline-size: 80px;
block-size: 80px;
margin-inline-end: 15px;
}
.logical-card h3 {
margin-block-start: 0;
text-align: start;
}
ãã¹ããšæ€èšŒ
ãã®æ°ãã CSS ã䜿çšãããšãã³ã³ããŒãã³ããä»»æã®ã³ã³ããã«ããããã§ããèªåçã«é©å¿ãããŸãã
- LTR ã³ã³ããã¹ãã§ã¯ïŒå ã®ç©çããŒãžã§ã³ãšåäžã«èŠããŸãã
- RTL ã³ã³ããã¹ã (dir="rtl") ã§ã¯ïŒã¢ãã¿ãŒã¯å³ã« float ãããã®ããŒãžã³ã¯å·Šã«ãããè£ é£Ÿçãªå¢çç·ã¯å³ã«ãããããã¹ã㯠start æãïŒå³ïŒã«ãªããŸããäžžãè§ã¯ãå³äžãšå³äžã«æ£ããé 眮ãããŸããããã¯ãã æ©èœããŸãã
- åçŽã³ã³ããã¹ã (writing-mode: vertical-rl) ã§ã¯ïŒã«ãŒãã®ãå¹ ãïŒçŸåšã®åçŽæ¹åã® inline-sizeïŒã¯ 300px ã«ãªããŸããã¢ãã¿ãŒã¯ãäžãïŒinline-startïŒã« float ãããã®ããŒãžã³ã¯ãäžãïŒinline-endïŒã«ãããŸããè£ é£Ÿçãªå¢çç·ã¯å³åŽ (inline-start) ã«ãããäžžãè§ã¯å³äžãšå·Šäžã«ãããŸããã³ã³ããŒãã³ãã¯ãã¡ãã£ã¢ã¯ãšãªããªãŒããŒã©ã€ããªãã«ãå®å šã«æ£ããå調æŽãããŠããŸãã
ãã©ãŠã¶ã®ãµããŒããšãã©ãŒã«ããã¯
ããã¯ãã¹ãŠçŽ æŽãããããã«èãããŸããããã©ãŠã¶ã®ãµããŒãã¯ã©ãã§ããïŒæå ±ã¯ãã¬ãã« 1 è«çããããã£ã®ãµããŒãã¯ããã¹ãŠã®ææ°ãã©ãŠã¶ã§åªããŠããããšã§ããmargin-inline-start ã padding-block ã®ãããªããããã£ã仿¥äœ¿çšã§ããŸãã
æ°ããã¬ãã« 2 æ©èœã®ãµããŒãã¯æ¥éã«åäžããŠããŸããããŸã æ®éçã§ã¯ãããŸãããfloatãclearãããã³ resize ã®è«çå€ã¯ååã«ãµããŒããããŠããŸããè«çç㪠border-radius ããããã£ã¯ææ°ã®ãã®ã§ããããã£ãŒãã£ãŒãã©ã°ã®èåŸã«ããããææ°ã®ãã©ãŠã¶ããŒãžã§ã³ã«ããå¯èœæ§ããããŸãããã€ãã®ããã«ãææ°ã®äºææ§ããŒã¿ã«ã€ããŠã¯ãMDN Web Docs ã CanIUse.com ã®ãããªãªãœãŒã¹ãåç §ããå¿ èŠããããŸãã
ããã°ã¬ãã·ããšã³ãã³ã¹ã¡ã³ãã®æŠç¥
CSS ã¯å埩åãããããã«èšèšãããŠãããããå€ããã©ãŠã¶ã«ãã©ãŒã«ããã¯ãç°¡åã«æäŸã§ããŸããã«ã¹ã±ãŒãã«ããããã©ãŠã¶ãè«çããããã£ãçè§£ã§ããªãå ŽåããããåçŽã«ç¡èŠãããã®åã«å®çŸ©ãããç©çããããã£ã䜿çšããããšãä¿èšŒãããŸãã
ãã©ãŒã«ããã¯å¯Ÿå¿ã® CSS ãèšè¿°ããæ¹æ³ã次ã«ç€ºããŸãã
.card {
/* å€ããã©ãŠã¶ã®ãã©ãŒã«ãã㯠*/
border-left: 5px solid darkcyan;
border-top-left-radius: 8px;
/* ãã©ãŒã«ããã¯ããªãŒããŒã©ã€ãããææ°ã®è«çãããã㣠*/
border-inline-start: 5px solid darkcyan;
border-start-start-radius: 8px;
}
ãã®ã¢ãããŒãã«ããããã¹ãŠã®äººã«ç¢ºå®ãªããŒã¹ã©ã€ã³ãšã¯ã¹ããªãšã³ã¹ãä¿èšŒããããšåæã«ãææ°ã®ãã©ãŠã¶ã䜿çšããŠãããŠãŒã¶ãŒã«ãæ©èœåŒ·åãããã¢ãããã£ãã¬ã€ã¢ãŠããæäŸãããŸããè€æ°ã®èšè¿°ã¢ãŒãããµããŒãããå¿ èŠããªããããžã§ã¯ãã®å Žåãããã¯ããéããããããŸãããããããã°ããŒãã«ã¢ããªã±ãŒã·ã§ã³ããã¶ã€ã³ã·ã¹ãã ããŸãã¯ããŒãã®å Žåãããã¯å ç¢ã§å°æ¥æ§ã®ããæŠç¥ã§ãã
æªæ¥ã¯è«ççã§ãïŒã¬ãã« 2 ãè¶ ããŠ
ç©ççãªèãæ¹ããè«ççãªèãæ¹ãžã®ç§»è¡ã¯ãææ°ã® CSS ã§æãéèŠãªå€åã® 1 ã€ã§ããããã¯ã倿§ãªã°ããŒãã«ãŠã§ãã®çŸå®ãšã¹ã¿ã€ãªã³ã°èšèªãäžèŽãããŸããç§ãã¡ããããããç»é¢æåã®ããã¯ãããå埩åããããã³ã³ãã³ãæåã®ãã¶ã€ã³ãžãšç§»è¡ãããŸãã
ãŸã ã®ã£ããããããŸããïŒããã€ããããŸããbackground-position ãã°ã©ããŒã·ã§ã³ã®ãããªããããã£ã®è«çå€ã¯ããŸã è°è«äžã§ããããããã¬ãã« 2 ã®ãªãªãŒã¹ã«ãããæ¥ã ã®ã¬ã€ã¢ãŠããšã¹ã¿ã€ãªã³ã°ã¿ã¹ã¯ã®å€§éšåã¯ãå®å šã«è«ççãªã¢ãããŒãã䜿çšããŠéæã§ããããã«ãªããŸããã
éçºè ãžã®è¡ååèµ·ã¯æç¢ºã§ãïŒè«çããããã£ãããã©ã«ãã§äœ¿çšãéå§ããŠãã ãããwidth ã®ä»£ããã« inline-size ã䜿çšããŠãã ãããå·Šå³ã®ããŒãžã³ãåå¥ã«èšå®ãã代ããã«ãmargin-inline ã䜿çšããŠãã ãããããã¯ãç°ãªãèšèªããµããŒãããã ãã§ã¯ãããŸãããããåªãããããå埩åã®ãã CSS ãèšè¿°ããããšã§ããè«çããããã£ã䜿çšããŠæ§ç¯ãããã³ã³ããŒãã³ãã¯ãLTRãRTLããŸãã¯åçŽã¬ã€ã¢ãŠãã§äœ¿çšãããŠãããã©ããã«é¢ä¿ãªããæ¬è³ªçã«ããåå©çšå¯èœã§é©å¿å¯èœã§ããããã¯åã«ããè¯ããšã³ãžãã¢ãªã³ã°ã§ãã
çµè«ïŒãããŒãåãå ¥ãã
CSS è«çããããã£ã¬ãã« 2 ã¯ãåãªãæ°ããæ©èœã®ã³ã¬ã¯ã·ã§ã³ã§ã¯ãããŸãããããã¯ããžã§ã³ã®å®æã§ããã³ã³ãã³ãã®èªç¶ãªæµããå°éããã¬ã€ã¢ãŠããæ§ç¯ããããã«å¿ èŠãªæåŸã®éèŠãªèŠçŽ ãæäŸããŸããfloat: inline-start ã border-start-start-radius ã®ãããªããããã£ãæ¡çšããããšã§ãç»é¢äžã«ããã¯ã¹ãé 眮ããã ããããçã«ã°ããŒãã«ã§ãå æ¬çã§ãå°æ¥æ§ã®ãããŠã§ããšã¯ã¹ããªãšã³ã¹ãèšèšããããšã«ãç§ãã¡ã®æè¡ãé«ããŸãã
æ¬¡ã«æ°ãããããžã§ã¯ããéå§ããããæ°ããã³ã³ããŒãã³ããæ§ç¯ããããããšãã¯ãmargin-left ãšå ¥åããåã«äžæåæ¢ããŠãã ããããå·Šãæå³ããã®ãããããšãéå§ãæå³ããã®ãããšèªåããŠãã ããããã®å°ããªã¡ã³ã¿ã«ã·ãããè¡ãããšã§ãã©ãã«ããŠãã誰ã«ãšã£ãŠããããé©å¿æ§ãããã¢ã¯ã»ã¹ãããããŠã§ãã«è²¢ç®ããããšã«ãªããŸãã